Benjamin Otte [Sat, 12 Nov 2016 21:57:31 +0000 (22:57 +0100)]
flowbox: children per line may not be 0
Benjamin Otte [Fri, 11 Nov 2016 23:37:54 +0000 (00:37 +0100)]
snapshot: Completely reengineer API
We now try to emulate cairo_t:
We keep a stack of nodes via push/pop and a transform matrix.
So whenever a new node is added to the snapshot, we transform it
by the current transform matrix and append it to the current node.
Benjamin Otte [Fri, 11 Nov 2016 23:37:38 +0000 (00:37 +0100)]
gsk: Add implementation for gsk_render_node_get_transform()
Benjamin Otte [Tue, 8 Nov 2016 00:42:06 +0000 (01:42 +0100)]
window: Implement snapshot()
Benjamin Otte [Mon, 7 Nov 2016 18:28:42 +0000 (19:28 +0100)]
widget: Add GtkWidgetClass.snapshot() vfunc
Does the same thing as the render vfunc, only that it uses a different
prototype.
Benjamin Otte [Mon, 7 Nov 2016 18:10:49 +0000 (19:10 +0100)]
gtk: Add gtk_widget_snapshot()
It's functionally equivalent to gtk_widget_get_render_node() but uses a
GtkSnapshot argument to carry the state.
Carlos Garnacho [Tue, 15 Nov 2016 16:06:59 +0000 (17:06 +0100)]
gdk: Fix win32 build typo
We've left libgdk-3 behind. Noticed by Andrew Chadwick, spotted
by Emmanuele Bassi.
Marek Cernocky [Tue, 15 Nov 2016 13:39:46 +0000 (14:39 +0100)]
Updated Czech translation
Matthias Clasen [Mon, 14 Nov 2016 20:17:41 +0000 (15:17 -0500)]
entry: Avoid recursion in gtk_entry_ensure_layout
This was unintentional, and lead to a memory leak.
Lauri Kasanen [Fri, 11 Nov 2016 09:36:20 +0000 (11:36 +0200)]
recent-manager: Fix a memory leak caused by "recent-manager: Add a limit to the list's size"
Signed-off-by: Lauri Kasanen <curaga@operamail.com>
https://bugzilla.gnome.org/show_bug.cgi?id=773587
Matthias Clasen [Mon, 14 Nov 2016 19:19:58 +0000 (14:19 -0500)]
appchooser: Plug a memory leak
We were not dropping the reference that the model gives us.
https://bugzilla.gnome.org/show_bug.cgi?id=774352
Andrew Chadwick [Sun, 13 Nov 2016 06:23:17 +0000 (06:23 +0000)]
win32: remove an unused func operating on GdkColor
https://bugzilla.gnome.org/show_bug.cgi?id=774347
Matthias Clasen [Mon, 14 Nov 2016 13:20:32 +0000 (08:20 -0500)]
widget-factory: Better progressbar testing
Hook the two top progressbars up to the scale with marks.
Your turn, Lapo.
Olivier Fourdan [Wed, 2 Nov 2016 09:08:17 +0000 (10:08 +0100)]
gtkstack: reorder size_allocate and move_window
Unlike other container widgets, GtkStack would allocate its children
prior to moving its windows, which might prevent further valid size
allocation signals to be emitted.
Re-order the size allocation of child widgets to be performed after
moving the GtkStack windows.
Thanks to Owen for spotting the real issue here.
https://bugzilla.gnome.org/show_bug.cgi?id=767713
Olivier Fourdan [Mon, 14 Nov 2016 11:23:56 +0000 (12:23 +0100)]
Revert "gdkwindow: configure native windows in move_native_children()"
This reverts commit
9e2b1ad39e86b2352116f49214cf195cb3e0e970.
Olivier Fourdan [Mon, 14 Nov 2016 11:23:49 +0000 (12:23 +0100)]
Revert "gdk: Get rid of unused variables"
This reverts commit
7016409e9f7cfab6990823c14d2d0287d38284b1.
Matthias Clasen [Sun, 13 Nov 2016 03:29:02 +0000 (22:29 -0500)]
Allow replacing input file in gtk-builder-tool simplify
Timm Bäder [Sat, 12 Nov 2016 07:39:35 +0000 (08:39 +0100)]
Call gtk_widget_set_has_window for missing windowed widgets
Timm Bäder [Sat, 12 Nov 2016 13:34:53 +0000 (14:34 +0100)]
window: Properly propagate for_size=-1
Timm Bäder [Sat, 12 Nov 2016 17:58:18 +0000 (18:58 +0100)]
stack: Use gtk_widget_measure
Timm Bäder [Sat, 12 Nov 2016 17:54:44 +0000 (18:54 +0100)]
listbox: Use gtk_widget_measure
Timm Bäder [Sat, 12 Nov 2016 17:28:40 +0000 (18:28 +0100)]
window: Use gtk_widget_measure
Timm Bäder [Sat, 12 Nov 2016 14:30:55 +0000 (15:30 +0100)]
grid: Use gtk_wiget_measure
Timm Bäder [Sat, 12 Nov 2016 06:56:11 +0000 (07:56 +0100)]
toolitemgroup: Remove style properties
Replace them with their default values
Timm Bäder [Fri, 11 Nov 2016 20:50:07 +0000 (21:50 +0100)]
combobox: Remove appears-as-list style property
Remove all the code handling the appears-as-list=TRUE case.
Timm Bäder [Fri, 11 Nov 2016 19:34:35 +0000 (20:34 +0100)]
treeview: Remove style properties
Replace them with the Adwaita default values
Chun-wei Fan [Fri, 11 Nov 2016 13:03:46 +0000 (21:03 +0800)]
gdkscreen-win32.c: Also define _WIN32_WINNT
As in the last commit on gdkdisplay-win32.c, we need to define that to be
0x0600 (Vista) or later so that the items needed in the Windows headers be
activated.
See: https://bugzilla.gnome.org/show_bug.cgi?id=768081#c62
Chun-wei Fan [Fri, 11 Nov 2016 12:53:41 +0000 (20:53 +0800)]
gdkdisplay-win32.c: Define _WIN32_WINNT
... to be for Vista (0x0600) or later. This is so that the necessary
items in the Windows headers be activated so that the code will build
properly on mingw-w64, and we already require Vista or later for GTK+.
Thanks Ting-Wei Lan for pointing this out.
See: https://bugzilla.gnome.org/show_bug.cgi?id=768081#c62
Lauri Kasanen [Thu, 27 Oct 2016 13:51:29 +0000 (16:51 +0300)]
recent-manager: Add a limit to the list's size
This fixes a DOS where any app can cause all running gtk apps
to use arbitrary amounts of memory.
Originally reported against mate-panel, where running a big slideshow
in eye-of-mate caused increasing RAM usage in mate-panel.
v2: Hardcode the value
Signed-off-by: Lauri Kasanen <curaga@operamail.com>
https://bugzilla.gnome.org/show_bug.cgi?id=773587
Matthias Clasen [Thu, 10 Nov 2016 20:16:05 +0000 (15:16 -0500)]
places sidebar: Don't leak a reference
Pointed out in https://bugzilla.gnome.org/show_bug.cgi?id=774185
Matthias Clasen [Thu, 10 Nov 2016 20:07:08 +0000 (15:07 -0500)]
Fix a copy-paste error
Pointed out in https://bugzilla.gnome.org/show_bug.cgi?id=774185#c3
Matthias Clasen [Thu, 10 Nov 2016 20:03:16 +0000 (15:03 -0500)]
headerbar: Don't leak widgets
We were not properly freeing separators that we end up
not using.
https://bugzilla.gnome.org/show_bug.cgi?id=774066
Matthias Clasen [Thu, 10 Nov 2016 19:46:21 +0000 (14:46 -0500)]
spinbutton: Fix some gadget handling issues
We were not adding the down_button gadget to the parent,
and we were not unreffing the button gadgets.
https://bugzilla.gnome.org/show_bug.cgi?id=774046
Massimo Valentini [Sat, 5 Nov 2016 13:21:22 +0000 (14:21 +0100)]
GdkGLContext: chain finalize handler
https://bugzilla.gnome.org/show_bug.cgi?id=773979
Thibaut Girka [Sun, 6 Nov 2016 21:49:00 +0000 (21:49 +0000)]
Fix loading cached compose tables
https://bugzilla.gnome.org/show_bug.cgi?id=773916
Gustavo Noronha Silva [Thu, 10 Nov 2016 18:13:47 +0000 (16:13 -0200)]
cssshadowvalue: scale the blur surface by the same factor as the target
Making sure the surfaces are using the same scale factor makes it more
likely a fast path will be used when pixman gets involved, as pointed
out by Benjamin Otte.
https://bugzilla.gnome.org/show_bug.cgi?id=772075
Carlos Garcia Campos [Tue, 8 Nov 2016 10:44:44 +0000 (11:44 +0100)]
printing: Do not truncate job names in GtkPrintOperation
We are currently truncating job names to 255 bytes, because that's the
maximum allowed length of job-name attribute in CUPS. This is a CUPS
limitation that GtkPrintOperation shouldn't need to know, and it
shouldn't affect other backends, that might have other limitations or
even no limitation at all. This has another side effect, that what you
set as GtkPrintOperation:job-name could be different to what you get if
the property is truncated, this is not documented in
gtk_print_operation_set_job_name(). So, I think the job name should be
truncated by the CUPS backend, right before setting the job-name
attribute.
https://bugzilla.gnome.org/show_bug.cgi?id=774097
Matthias Clasen [Thu, 10 Nov 2016 13:26:37 +0000 (08:26 -0500)]
Avoid criticals in gtk_image_get_render_node
These nodes can be NULL, we need to handle that.
Florian Müllner [Mon, 10 Oct 2016 10:33:54 +0000 (12:33 +0200)]
wayland: Set startup ID from GApplication platform data
The GApplication platform data may contain a startup ID that on X11
is used to set the startup notification ID when activated. Do the
same on the wayland backend to make startup notifications work for
DBus-activated applications where the DESKTOP_STARTUP_ID environment
variable is not set.
https://bugzilla.gnome.org/show_bug.cgi?id=768531
Florian Müllner [Mon, 10 Oct 2016 10:33:54 +0000 (12:33 +0200)]
gdkdisplay-wayland: Add API to set startup notification ID
For wayland clients, the startup notification ID is currently only set
from the DESKTOP_STARTUP_ID environment variable. As that variable is
only set for clients launched via exec(), startup completion is not
indicated correctly for DBus-activated applications unless an explicit
ID is specified - usually that is not the case, as the default handling
uses gdk_notify_startup_complete().
To address this, we need API to set the startup notification ID from GTK
as we have on X11.
https://bugzilla.gnome.org/show_bug.cgi?id=768531
Benjamin Otte [Mon, 7 Nov 2016 17:25:12 +0000 (18:25 +0100)]
iconhelper: Add support for GskTexture
... and use that in GtkImage.
Benjamin Otte [Mon, 7 Nov 2016 17:23:38 +0000 (18:23 +0100)]
gsk: Implement textures for the Cairo renderer
Benjamin Otte [Mon, 7 Nov 2016 16:59:38 +0000 (17:59 +0100)]
gsk: Add GskTexture
Marek Cernocky [Tue, 8 Nov 2016 11:38:32 +0000 (12:38 +0100)]
Updated Czech translation
Piotr Drąg [Tue, 8 Nov 2016 09:08:14 +0000 (10:08 +0100)]
Update POTFILES.skip
Benjamin Otte [Tue, 8 Nov 2016 01:24:40 +0000 (02:24 +0100)]
range: Don't leak pointers to discarded gadgets
Benjamin Otte [Tue, 8 Nov 2016 01:23:30 +0000 (02:23 +0100)]
reftests: Add reftest for the last 2 fixes
Makes sure that the clipping we do when pushing a group is at the
correct place and in particular doesn't influence shadows.
Benjamin Otte [Tue, 8 Nov 2016 01:20:40 +0000 (02:20 +0100)]
render: Draw shadows outside of potential push_group() call
Before, the shadows were clipped.
Benjamin Otte [Tue, 8 Nov 2016 01:15:43 +0000 (02:15 +0100)]
render: Clip the correct rectangle
We translated before.
Lapo Calamandrei [Mon, 7 Nov 2016 21:34:02 +0000 (22:34 +0100)]
Adwaita: tweak radial-gradient()'s
radial-gradient()'s are behaving, hence simplify the css.
Matthias Clasen [Mon, 7 Nov 2016 19:59:23 +0000 (14:59 -0500)]
Update the migration guide
Mention the demise of -gtk-gradient, and explain that CSS syntax
works fine for this now.
Matthias Clasen [Mon, 7 Nov 2016 20:40:21 +0000 (15:40 -0500)]
css: Improve spec compliance of the radial gradient parser
The spec says:
"If <shape> is omitted, the ending shape defaults to a circle if the <size>
is a single <length>, and to an ellipse otherwise."
Make it so.
Matthias Clasen [Mon, 7 Nov 2016 20:05:37 +0000 (15:05 -0500)]
Revert "Update the CSS docs for the demise of define-color"
This reverts commit
12d9451b1cb1e38e7431c552925d55e2d5fc3482.
Matthias Clasen [Mon, 7 Nov 2016 20:05:28 +0000 (15:05 -0500)]
Revert "Update the migration guide"
This reverts commit
b86816438147ffe61959218524f59c44581ee006.
Matthias Clasen [Mon, 7 Nov 2016 19:59:23 +0000 (14:59 -0500)]
Update the migration guide
Mention some removed CSS extensions.
Matthias Clasen [Mon, 7 Nov 2016 19:49:46 +0000 (14:49 -0500)]
Update the CSS docs for the demise of define-color
Matthias Clasen [Mon, 7 Nov 2016 19:43:49 +0000 (14:43 -0500)]
Drop support for symbolic colors
-gtk-gradient was the last internal user of this code, so
we can drop it now.
Matthias Clasen [Mon, 7 Nov 2016 18:47:07 +0000 (13:47 -0500)]
Update CSS docs to reflect the demise of -gtk-gradient
Matthias Clasen [Mon, 7 Nov 2016 18:44:57 +0000 (13:44 -0500)]
Drop support for -gtk-gradient
The standard CSS radial-gradient can be used instead, and Adwaita
and HighContrast have been ported over.
Matthias Clasen [Mon, 7 Nov 2016 19:44:29 +0000 (14:44 -0500)]
css: Avoid a crash while parsing radial gradients
has_size does not imply that sizes[0] is != NULL.
Lapo Calamandrei [Mon, 7 Nov 2016 17:22:28 +0000 (18:22 +0100)]
HC: use radial-gradient() in place of -gtk-gradient().
Lapo Calamandrei [Mon, 7 Nov 2016 16:12:21 +0000 (17:12 +0100)]
Adwaita: no more -gtk-gradient(), really
the undershoot is drawn with a radial-gradient now.
Chun-wei Fan [Mon, 7 Nov 2016 06:35:17 +0000 (14:35 +0800)]
gdkprivate-win32.h: Complete removal of attributes_mask
We removed this parameter from the function declaration, but not the
prototype. Fix that.
Benjamin Otte [Mon, 7 Nov 2016 02:15:00 +0000 (03:15 +0100)]
gdk: gdk_window_new() is not called for foreign windows
So we can remove the special cases that were used for them.
Benjamin Otte [Mon, 7 Nov 2016 00:33:43 +0000 (01:33 +0100)]
gdk: Remove attributes_mask from gdk_window_new()
The only remaining values were always treated as 0, so we just hardcode
them to 0.
Benjamin Otte [Mon, 7 Nov 2016 00:12:47 +0000 (01:12 +0100)]
API: gdk: Remove gdk_window_new()
It's finally no longer public API.
Benjamin Otte [Mon, 7 Nov 2016 00:03:17 +0000 (01:03 +0100)]
API: gdk: Add gdk_window_new_temp()
Your one stop shop for all those nasty hidden input-only windows.
Benjamin Otte [Sun, 6 Nov 2016 22:47:56 +0000 (23:47 +0100)]
API: gdk: Add gdk_window_new_popup()
... and use it.
Benjamin Otte [Sun, 6 Nov 2016 22:46:44 +0000 (23:46 +0100)]
range: Use gdk_window_new_input()
Benjamin Otte [Sun, 6 Nov 2016 21:03:45 +0000 (22:03 +0100)]
tests: Remove subsurface test
It did lots of ubsupported things (like creating subsurfaces on every
platform).
Benjamin Otte [Sun, 6 Nov 2016 20:36:43 +0000 (21:36 +0100)]
API: wayland: Add gdk_wayland_window_new_subsurface()
... and use it instead of gdk_window_new().
Benjamin Otte [Sun, 6 Nov 2016 16:40:59 +0000 (17:40 +0100)]
API: gdk: Add gdk_window_new_toplevel()
... and use it in GTK.
Benjamin Otte [Sun, 6 Nov 2016 15:22:21 +0000 (16:22 +0100)]
gdkwindow: Remove GdkWindowAttr.type_hint
Instead, let the callers call gdk_window_set_type_hint(). Which is
surprsingly what every backend did.
Benjamin Otte [Sun, 6 Nov 2016 14:50:26 +0000 (15:50 +0100)]
scrolledwindow: Turn into no-window widget
Benjamin Otte [Sun, 6 Nov 2016 14:43:06 +0000 (15:43 +0100)]
x11: Set override_redirect on input-only windows
b9955cfff1a2290c7826565049c934d237e9028f broke this.
Benjamin Otte [Sun, 6 Nov 2016 13:52:56 +0000 (14:52 +0100)]
listbox: Turn into no-window widget
Benjamin Otte [Sun, 6 Nov 2016 13:41:07 +0000 (14:41 +0100)]
flowbox: Turn into no-window widget
John Ralls [Sat, 5 Nov 2016 22:03:54 +0000 (15:03 -0700)]
Update gdk-quartz functions for the demise of GdkDeviceManager.
John Ralls [Sat, 5 Nov 2016 22:03:00 +0000 (15:03 -0700)]
Remove screen height and width functions from gdk-quartz.
Since they were previously deleted from gdk.
John Ralls [Sat, 5 Nov 2016 22:01:28 +0000 (15:01 -0700)]
Add some new function prototypes to gtkquartz.h.
Fixes compile errors (-Werror,-Wmissing-prototypes).
John Ralls [Sat, 5 Nov 2016 21:59:56 +0000 (14:59 -0700)]
Update GdkOSXVersion enum with the last 4 MacOS releases.
John Ralls [Sat, 5 Nov 2016 21:58:34 +0000 (14:58 -0700)]
Framework Carbon required for building against MacOSX10.12.sdk.
Should be harmless elsewhere.
Lapo Calamandrei [Sat, 5 Nov 2016 15:16:37 +0000 (16:16 +0100)]
Adwaita: no more -gtk-gradient()
the only place where it was used was the `needs attention` dot
which is now drawn using radial-gradient().
Timm Bäder [Sat, 5 Nov 2016 12:37:26 +0000 (13:37 +0100)]
menu: Properly clip child menuitems
Now that GtkMenu isn't a windowed widget anymore, we have to
differentiate between the (0, 0) of the cairo_t and the position of
priv0->view_window.
Timm Bäder [Sat, 5 Nov 2016 12:21:03 +0000 (13:21 +0100)]
tests/popupat: Remove references to noexistent widgets
Timm Bäder [Sat, 5 Nov 2016 09:34:34 +0000 (10:34 +0100)]
entry: Fix coordinates after rendernode conversion
Ease the transition by removing the text_area and frame vfuncs which are
unused inside GTK+.
Timm Bäder [Sat, 5 Nov 2016 08:51:14 +0000 (09:51 +0100)]
spinbutton: Convert to indirect rendering
Timm Bäder [Sat, 5 Nov 2016 09:42:39 +0000 (10:42 +0100)]
Revert "Revert "Convert GtkEntry to indirect rendering""
This reverts commit
f4fa111e3240822df1b1c02abc49fea9c274232c.
Timm Bäder [Sat, 5 Nov 2016 07:39:10 +0000 (08:39 +0100)]
button: Remove _get_event_window
Timm Bäder [Fri, 4 Nov 2016 09:04:44 +0000 (10:04 +0100)]
Remove gtk_widget_set_mapped
Let all the remaining callers chain up.
Timm Bäder [Thu, 3 Nov 2016 20:02:53 +0000 (21:02 +0100)]
notebook: use gesture for clicks
Instead of GtkWidget's buton-press-event/button-release-event
Gábor Kelemen [Sat, 5 Nov 2016 09:30:58 +0000 (09:30 +0000)]
Update Hungarian translation
Piotr Drąg [Sat, 5 Nov 2016 07:51:34 +0000 (08:51 +0100)]
Update POTFILES.skip
Benjamin Otte [Sat, 5 Nov 2016 02:31:21 +0000 (03:31 +0100)]
fixed: Port to GskRenderNode
The fishbowl demo uses this.
Benjamin Otte [Sat, 5 Nov 2016 02:31:10 +0000 (03:31 +0100)]
gtk-demo: Add fishbowl demo
Benjamin Otte [Fri, 4 Nov 2016 16:23:20 +0000 (17:23 +0100)]
win32: Remove unused headers
Benjamin Otte [Fri, 4 Nov 2016 03:08:50 +0000 (04:08 +0100)]
API: gdk: Remove title from gdk_window_new()
Use gdk_window_set_title() afterwards instead.
Benjamin Otte [Fri, 4 Nov 2016 02:35:49 +0000 (03:35 +0100)]
API: gdk: Remove override_redirect flag from GdkWindowAttr
When you want an override-redirect window, you create it that way by
creating a GDK_WINDOW_TEMP window.
Benjamin Otte [Fri, 4 Nov 2016 01:37:11 +0000 (02:37 +0100)]
API: gdk: Remove gdk_window_set_override_redirect()
When you want an override-redirect window, you create it that way.
Changing that behavior is not supported anywhere (but on X of course).
Philip Withnall [Fri, 4 Nov 2016 20:16:06 +0000 (20:16 +0000)]
gtkstylecontext: Clarify memory allocation behaviour of getters
It wasn’t clear that gtk_style_context_get[_valist]() behave like
g_object_get() — i.e. pointer-based types are returned newly-allocated.
Clarify that.
https://bugzilla.gnome.org/show_bug.cgi?id=773954